package com.mxpio.webapp.service;

import com.mxpio.webapp.entity.MonitorServer;
import com.mxpio.webapp.vo.MonitorServerVo;
import com.mxpioframework.jpa.query.Criteria;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * @author: Cheng
 * @date: 2022/10/28
 */
public interface IMonitorServerService {


    MonitorServer create(MonitorServer monitorServer);

    /**
     * 查询全部
     *
     * @param criteria 条件
     * @param pageable 分页参数
     * @return /
     */
    Page<MonitorServerVo> queryServerStatus(Criteria criteria, Pageable pageable);

    /**
     * 主机资源管理（分页）
     *
     * @param criteria
     * @param pageable
     * @return
     */
    Page<MonitorServer> pageServer(Criteria criteria, Pageable pageable);

    /**
     * 删除
     *
     * @param ids
     */
    void delete(List<String> ids);

    /**
     * 编辑服务器资源
     *
     * @param monitorServer
     */
    void editMonitorServer(MonitorServer monitorServer);

    /**
     * 处理服务器信息包
     *
     * @param msg
     */
    void dealServerPackage(String msg);

}
